package com.ldp.designpatterns.study.prototype.prototype;

import lombok.Data;

/**
 * @ClassName Shape
 * @Description TODO:原型模式1、抽象原型（Prototype）：声明克隆方法，作为所有具体原型的基类或接口。
 * @Author lindipei
 * @Date 2023/10/17 15:33
 */
@Data
public abstract class Shape implements Cloneable {

    private String id;
    protected String type;

    protected abstract void draw();

   /* public Object clone() {
        Object clone = null;
        try {
            clone = super.clone();
        } catch (CloneNotSupportedException e) {
            e.printStackTrace();
        }
        return clone;
    }*/
}
